package avicit.bdp.dgs.metadata.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * @author mayanj 表字段比对返回体
 */
@ApiModel(value = "ColumnCompareResponseDTO", description = "表字段对比结果")
@JsonInclude(JsonInclude.Include.ALWAYS)
public class ColumnCompareResponseVo {

  @ApiModelProperty(value = "表版本号", name = "tableVersion")
  private ValueCompareResponseDetail tableVersion;

  @ApiModelProperty(value = "字段名称", name = "columnName")
  private ValueCompareResponseDetail columnName;

  @ApiModelProperty(value = "字段中文名称", name = "columnCName")
  private ValueCompareResponseDetail columnCName;

  /** 字段类型 */
  @ApiModelProperty(value = "字段类型", name = "columnType")
  private ValueCompareResponseDetail columnType;

  /** 字段长度 */
  @ApiModelProperty(value = "字段长度", name = "columnLength")
  private ValueCompareResponseDetail columnLength;

  /** 字段精度 */
  @ApiModelProperty(value = "字段精度", name = "columnPrecision")
  private ValueCompareResponseDetail columnPrecision;

  /** 是否主键 */
  @ApiModelProperty(value = "是否主键", name = "primaryKey")
  private ValueCompareResponseDetail primaryKey;

  /** 字段唯一性 */
  @ApiModelProperty(value = "唯一", name = "unique")
  private ValueCompareResponseDetail unique;

  /** 字段是否可为空 */
  @ApiModelProperty(value = "为空", name = "nullable")
  private ValueCompareResponseDetail nullable;

  /** 外键 */
  @ApiModelProperty(value = "外键", name = "foreignKey")
  private ValueCompareResponseDetail foreignKey;

  /** 字段备注 */
  @ApiModelProperty(value = "备注", name = "remark")
  private ValueCompareResponseDetail remark;

  public ValueCompareResponseDetail getTableVersion() {
    return tableVersion;
  }

  public void setTableVersion(ValueCompareResponseDetail tableVersion) {
    this.tableVersion = tableVersion;
  }

  public ValueCompareResponseDetail getColumnName() {
    return columnName;
  }

  public void setColumnName(ValueCompareResponseDetail columnName) {
    this.columnName = columnName;
  }

  public ValueCompareResponseDetail getColumnCName() {
    return columnCName;
  }

  public void setColumnCName(ValueCompareResponseDetail columnCName) {
    this.columnCName = columnCName;
  }

  public ValueCompareResponseDetail getColumnType() {
    return columnType;
  }

  public void setColumnType(ValueCompareResponseDetail columnType) {
    this.columnType = columnType;
  }

  public ValueCompareResponseDetail getColumnLength() {
    return columnLength;
  }

  public void setColumnLength(ValueCompareResponseDetail columnLength) {
    this.columnLength = columnLength;
  }

  public ValueCompareResponseDetail getColumnPrecision() {
    return columnPrecision;
  }

  public void setColumnPrecision(ValueCompareResponseDetail columnPrecision) {
    this.columnPrecision = columnPrecision;
  }

  public ValueCompareResponseDetail getPrimaryKey() {
    return primaryKey;
  }

  public void setPrimaryKey(ValueCompareResponseDetail primaryKey) {
    this.primaryKey = primaryKey;
  }

  public ValueCompareResponseDetail getUnique() {
    return unique;
  }

  public void setUnique(ValueCompareResponseDetail unique) {
    this.unique = unique;
  }

  public ValueCompareResponseDetail getNullable() {
    return nullable;
  }

  public void setNullable(ValueCompareResponseDetail nullable) {
    this.nullable = nullable;
  }

  public ValueCompareResponseDetail getForeignKey() {
    return foreignKey;
  }

  public void setForeignKey(ValueCompareResponseDetail foreignKey) {
    this.foreignKey = foreignKey;
  }

  public ValueCompareResponseDetail getRemark() {
    return remark;
  }

  public void setRemark(ValueCompareResponseDetail remark) {
    this.remark = remark;
  }
}
